An Autonomic Software Architecture for Distributed Application

نویسنده

  • Mohammad Muztaba Fuad
چکیده

Autonomic computing is a grand challenge in computing that aims to produce software that has the properties of self-configuration, self-healing, self-optimization and selfprotection. Adding such autonomic properties into existing applications is immensely useful for redeploying them in an environment other than they were developed for. Such transformed applications can be redeployed in different dynamic environments without the user making changes to the application. However, creating such autonomic software entities is a significant challenge not only because of the amount of code transformation required but also for the additional programming needed for such conversion. This thesis presents techniques for injecting autonomic primitives into existing user code by statically analyzing the code and partitioning it to manageable autonomic components. Experiments show that such code transformations are challenging, however they are worthwhile in order to provide transparent autonomic behavior. Software architecture to provide such autonomic computing support is presented and evaluated to determine its suitability for a fully fledged autonomic computing system. The presented architecture is a novel peer-to-peer distributed object-based management automation architecture. In this model, independent or communicating objects are treated as managed elements in the geographically distributed autonomic elements. The presented organization offers significant advantages over a traditional client-server organization by permitting the incorporation of self-management properties into each of the distributed nodes and making each of the Autonomic Elements in the distributed environment identical in terms of managerial capacity. The unification of traditional client-server roles allows management functions to be distributed across different elements in the system, allowing autonomous behavior of the whole system. This thesis also presents a self regulating design of an autonomic element in a distributed object environment. Architectural choices have a profound effect on the capabilities of any autonomic system and affect many of the design decisions during its implementation. The goal of this architectural design is to provide an easy to program autonomic element which can be implemented in most domains with minor modifications. Profiling and experimentation with this design shows that it is lightweight and perform smoothly without causing extensive overhead. AN AUTONOMIC SOFTWARE ARCHITECTURE FOR DISTRIBUTED APPLICATIONS by Mohammad Muztaba Fuad A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Computer Science MONTANA STATE UNIVERSITY Bozeman, Montana

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Scalable Self-Managing Architecture for WSRF Services

Service-Oriented Architectures provide integration of and interoptablity for independent and loosely coupled services. Web services and the WSRF standards are frequently used to realise such Service-Oriented Architectures. In such systems, autonomic principles of self-configuration, self-optimisation, self-healing and self-adapting are desirable to ease management and improve robustness. In thi...

متن کامل

Software Architecture Design of an Autonomic System

Autonomic Computing is an exciting research direction that aims to provide self-configuration, selfoptimization, self-healing and self-protection capabilities to computer systems. Currently, performance tuning of J2EE application server is a complex manual task. This is unfortunately a necessary task in order to achieve optimal performance under dynamic workload environment. We propose generic ...

متن کامل

Designing a Flexible Naming System with the Compliant Systems Architecture

Naming is an integral component of all computer systems and, in the case of distributed computing, often requires application-level involvement. Distributed paradigms concerned with supporting computation over discrete address spaces must identify specific program entities before they may interact. Naming systems satisfy this requirement by binding an entity to a name and allowing other program...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007